Computing devices, ranging from specialized devices to phones to tablets, continue to rapidly evolve and are increasingly capable of supporting complex software stacks. For example, the smartphone of today is as capable as a personal computer from a just few years ago. This improvement in processing power creates the opportunity to deliver the same applications, services, and productivity experiences on these new form factors as is available on traditional desktop computing devices. These devices, however, do not currently have the same development, debugging, and verification tools available on the desktop computer.